As the Internet technology constantly advances, cloud computing is gradually replacing traditional computing methods due to advantages of its high efficiency, convenience, and configurability, etc. Currently, cloud computing systems are often built by using OpenStack architecture. Through providing compute service (nova), networking service (neutron), block storage service (cinder), image service (glance), and identity service (keystone), etc., OpenStack can serve as a management middleware.
To build a complete cloud computing system, OpenStack is often configured with corresponding underlying services. Currently, a storage backend can be built based on the Ceph system to cooperate with OpenStack block storage service, thereby providing support for the compute service to store and retrieve the virtual machine image.
In the existing technology, the cloud computing system is often merely configured with a single storage backend. Virtual machine image files of compute nodes may be stored in the single storage backend. However, using a single storage backend often has the following problems.
1. Once the storage backend breaks down, all compute nodes may collapse. Thus, the system disaster tolerance may be low.
2. As the amount of data constantly increases, the storage backend may eventually need to scale-out. The current scale-out method is adding more storage nodes to the storage backend. However, in practical applications, this scale-out method may sometimes cause the virtual machines in the compute nodes to collapse, and the system stability is also relatively poor.